package com.xyy.saas.payment.util;

/**
 * 分页帮助类
 * @author wangtianqi
 * @date 2019/11/20 15:10
 */
public final class PageUtil {

    /** 第一页 */
    public static final int PAGE_FIRST = 1;

    /**
     * 获取总页数
     *
     * @param totalCount
     *            总记录数
     * @param pageSize
     *            每页显示数
     * @return
     */
    public static int getPageSum(int totalCount, int pageSize) {
        return (totalCount + pageSize - 1) / pageSize;
    }

    /**
     * 获取页偏移数
     *
     * @param pageNum
     *            当前页码
     * @param pageSize
     *            每页显示数
     * @return
     */
    public static int getPageOffset(int pageNum, int pageSize) {
        int pageOffset = pageNum * pageSize - pageSize;
        return Math.max(pageOffset, 0);
    }

    /**
     * 根据行号获取所在页码
     *
     * @param rowNum
     *            行号
     * @param pageSize
     *            每页显示数
     * @return
     */
    public static int getPageNum(int rowNum, int pageSize) {
        return (rowNum + pageSize - 1) / pageSize;
    }

}
